package cn.topevery.garden.entity.po;

import cn.topevery.garden.framework.base.BaseEntity;
import com.alibaba.fastjson.annotation.JSONField;
import hw.topevery.framework.annotation.DbTable;
import hw.topevery.framework.annotation.DbTableField;
import hw.topevery.framework.enums.DbTypeEnum;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 绿地占用信息表
 *
 * @author code-generate
 * @date 2022-01-05
 */
@Data
@DbTable(tableName = "t_oca_info")
public class OcaInfo extends BaseEntity {
        /**
     * UUID
     */
    @DbTableField(columnName = "c_oca_id", dbType = DbTypeEnum.CHAR)
    public String ocaId ;

    /**
     * 许可证号
     */
    @DbTableField(columnName = "c_permit_code", dbType = DbTypeEnum.VARCHAR)
    public String permitCode ;

    /**
     * 区域ID
     */
    @DbTableField(columnName = "c_distract_id", dbType = DbTypeEnum.VARCHAR)
    public String distractId ;

    /**
     * 区域
     */
    @DbTableField(columnName = "c_distract_name", dbType = DbTypeEnum.VARCHAR)
    public String distractName ;

    /**
     * 街道
     */
    @DbTableField(columnName = "c_street_id", dbType = DbTypeEnum.CHAR)
    public Character streetId ;

    /**
     * 街道名称
     */
    @DbTableField(columnName = "c_street_name", dbType = DbTypeEnum.VARCHAR)
    public String streetName ;

    /**
     * 审批方式 可选：1 行政许可、2 备案
     */
    @DbTableField(columnName = "c_audit_type", dbType = DbTypeEnum.INTEGER)
    public Integer auditType ;

    /**
     * 占用理由 
     */
    @DbTableField(columnName = "c_oca_reason", dbType = DbTypeEnum.VARCHAR)
    public String ocaReason ;

    /**
     * 占用地址 
     */
    @DbTableField(columnName = "c_oca_address", dbType = DbTypeEnum.VARCHAR)
    public String ocaAddress ;

    /**
     * 占用单位 
     */
    @DbTableField(columnName = "c_oca_dept", dbType = DbTypeEnum.VARCHAR)
    public String ocaDept ;

    /**
     * 占用面积 临时 
     */
    @DbTableField(columnName = "c_oca_measure", dbType = DbTypeEnum.FLOAT)
    public Float ocaMeasure ;

    /**
     * 占用面积 永久 
     */
    @DbTableField(columnName = "c_oca_measure_permanent", dbType = DbTypeEnum.FLOAT)
    public Float ocaMeasurePermanent ;

    /**
     * 迁移乔木数量
     */
    @DbTableField(columnName = "c_move_tree_cnt", dbType = DbTypeEnum.INTEGER)
    public Integer moveTreeCnt ;

    /**
     * 砍伐乔木数量
     */
    @DbTableField(columnName = "c_cut_tree_cnt", dbType = DbTypeEnum.INTEGER)
    public Integer cutTreeCnt ;

    /**
     * 许可日期
     */
    @DbTableField(columnName = "c_permit_date", dbType = DbTypeEnum.TIMESTAMP)
    @JSONField(format="yyyy-MM-dd HH:mm:ss")
    public LocalDateTime permitDate ;

    /**
     * 有效期至
     */
    @DbTableField(columnName = "c_end_date", dbType = DbTypeEnum.TIMESTAMP)
    @JSONField(format="yyyy-MM-dd HH:mm:ss")
    public LocalDateTime endDate ;

    /**
     * 修改人
     */
    @DbTableField(columnName = "c_db_update_id", dbType = DbTypeEnum.INTEGER)
    public Integer dbUpdateId ;

    /**
     * 修改时间
     */
    @DbTableField(columnName = "c_db_update_date", dbType = DbTypeEnum.TIMESTAMP)
    @JSONField(format="yyyy-MM-dd HH:mm:ss")
    public LocalDateTime dbUpdateDate ;


}
